package net.pessu.android.shoppoid.convertisseur;

import greendroid.app.GDActivity;
import greendroid.widget.ActionBar;
import net.pessu.android.shoppoid.R;
import net.pessu.android.shoppoid.gui.IhmObjets;
import net.pessu.android.shoppoid.gui.TextChoicesContener;
import android.content.Context;
import android.graphics.Color;
import android.os.Bundle;
import android.view.Gravity;
import android.widget.TableLayout;
import android.widget.TableRow;
import android.widget.TextView;

public class Convertisseur extends GDActivity {

	TextChoicesContener contener;
	TextView titreConv;
	TableLayout tableConv;

	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setActionBarContentView(R.layout.convertisseur);
		ActionBar bar = getActionBar();
		bar.setTitle(getString(R.string.conv));
		bar.setFont(IhmObjets.tfTitre);
		bar.setFontSize(30);
		Bundle b = getIntent().getExtras();

		titreConv = (TextView) findViewById(R.id.titreconv);
		tableConv = (TableLayout) findViewById(R.id.tableConverter);
		
		contener = new TextChoicesContener(this);

		switch (b.getInt("id")) {
		case 0:
			titreConv
					.setText(ConstantesConvertisseur.CONVERTISSEUR_DE_TAILLES_DE_HAUTS);
			createTableRow(ConstantesConvertisseur.META_CONV_HAUTS,
					ConstantesConvertisseur.CONV_HAUTS);
			break;
		case 1:
			titreConv
					.setText(ConstantesConvertisseur.CONVERTISSEUR_DE_TAILLES_DE_SOUTIENS_GORGES);
			createTableRow(ConstantesConvertisseur.META_CONV_SOUTIF,
					ConstantesConvertisseur.CONV_SOUTIF);
			break;
		case 2:
			titreConv
					.setText(ConstantesConvertisseur.CONVERTISSEUR_DE_TAILLES_DE_SLIP_SHORT);
			createTableRow(ConstantesConvertisseur.META_CONV_SLIP,
					ConstantesConvertisseur.CONV_SLIP);
			break;
		case 3:
			titreConv
					.setText(ConstantesConvertisseur.CONVERTISSEUR_DE_TAILLES_DE_ROBES_JUPES);
			createTableRow(ConstantesConvertisseur.META_CONV_ROBE,
					ConstantesConvertisseur.CONV_ROBE);
			break;
		case 4:
			titreConv
					.setText(ConstantesConvertisseur.CONVERTISSEUR_DE_TAILLES_DE_PANTALONS);
			createTableRow(ConstantesConvertisseur.META_CONV_PANT,
					ConstantesConvertisseur.CONV_PANT);
			break;
		case 5:
			titreConv
					.setText(ConstantesConvertisseur.CONVERTISSEUR_DE_TAILLES_DE_CHEMISES);
			createTableRow(ConstantesConvertisseur.META_CONV_CHEM,
					ConstantesConvertisseur.CONV_CHEM);
			break;
		case 6:
			titreConv
					.setText(ConstantesConvertisseur.CONVERTISSEUR_DE_TAILLES_DE_COSTUMES);
			createTableRow(ConstantesConvertisseur.META_CONV_COST,
					ConstantesConvertisseur.CONV_COST);
			break;
		case 7:
			titreConv
					.setText(ConstantesConvertisseur.CONVERTISSEUR_DE_TAILLES_DE_CHAUSSURES_FEMMES);
			createTableRow(ConstantesConvertisseur.META_CONV_CHAU_F,
					ConstantesConvertisseur.CONV_CHAU_F);
			break;
		case 8:
			titreConv
					.setText(ConstantesConvertisseur.CONVERTISSEUR_DE_TAILLES_DE_CHAUSSURES_HOMMES);
			createTableRow(ConstantesConvertisseur.META_CONV_CHAU_H,
					ConstantesConvertisseur.CONV_CHAU_H);
			break;
		default:
			titreConv
					.setText(ConstantesConvertisseur.PAS_DE_CONVERTISSEUR_DE_TAILLES);
			break;
		}

	}

	private void createTableRow(String[][] meta, String[][] data) {
		for (int i = 0; i < meta.length; i++) {
			tableConv.addView(addConverter(this, meta[i], data[i]));
		}
		contener.finaliseContener();
	}

	protected TableRow addConverter(Context context, String[] meta,
			String[] data) {
		TableRow currentRow = new TableRow(context);
		currentRow.setGravity(Gravity.CENTER_HORIZONTAL);
		TextView currentText = new TextView(context);
		currentText.setTextColor(Color.BLACK);
		currentText.setText(meta[0]);
		currentRow.addView(currentText);
		currentRow.addView(contener.addTextChoices(
				IhmObjets.getStringContext(R.string.choisirtaille), data));
		return currentRow;
	}

}
